Computing systems may be transferred between various power states. In general, each power state provides for the powering down of certain elements of the computing system during period of inactivity. Lower states generally provide further power savings, but also require additional time to return to operation.
For example, power states may include states referred to as S-states, including S3 and S4. S3, sometimes referred to as Standby, Sleep, or Suspend to RAM, is a sleep state in which the operating system (OS) of a computing system saves the context of the system into physical memory (dynamic random access memory, or DRAM) and puts the computing system into a suspend state. In this operation, open documents and programs (applications) (or a portion thereof) that were used at the time of entering into S3 are also saved in DRAM during the suspend state. Further, contents of some chipset registers may also be written to DRAM. The physical memory (DRAM) may be referred to as main memory or system memory. During the S3 state, power is removed from the platform hardware, with the exception of the DRAM and a small amount of circuitry used to later wake the system. The S3 power state provides a relatively fast suspend and resume (wake) time due to its ability to save and restore OS context and previously used programs and documents from high-speed DRAM memory.
S4, sometimes referred to as Hibernate, Safe Sleep, or Suspend to disk, provides that the OS context and open documents and programs (or a portion thereof) are saved on nonvolatile memory such as a hard disk drive (HDD) rather than in fast DRAM memory, where nonvolatile memory allows for persistent storage of data. This allows for higher power savings than the S3 state because the DRAM is not kept powered, but with higher latencies due to slow read and write access times of the HDD.
However, the implementation of operations for a fast platform hibernate and resume operation utilizes a static allocation of storage of data in nonvolatile memory. The implementation of fast platform hibernation operates to reduce the amount of such memory available for other uses because of the reservation of a portion of such memory for fast platform hibernate and resume operation.